package dominio;

import java.util.Deque;
import java.util.ArrayDeque;

public class ConjuntoEvidencias {
	
	private Deque<Evidencia> personagens;
	private Deque<Evidencia> paises;
	private Deque<Evidencia> armas;
	
	public ConjuntoEvidencias(){
		personagens = new ArrayDeque<Evidencia>();
		paises = new ArrayDeque<Evidencia>();
		armas = new ArrayDeque<Evidencia>();
		
		inicialisar();
		
	}
	
	private void inicialisar(){
		personagens.add(Evidencia.AUVERGNE);
		personagens.add(Evidencia.AUVERGNE);
		personagens.add(Evidencia.RODOLFO);
		personagens.add(Evidencia.TILLY);
		personagens.add(Evidencia.TORSTENSON);
		personagens.add(Evidencia.WALLENSTEIN);
		
		armas.add(Evidencia.ARCABUZ);
		armas.add(Evidencia.GANCHO);
		armas.add(Evidencia.MACHADINHA);
		armas.add(Evidencia.PUNHAL);
		armas.add(Evidencia.SABRE);
		armas.add(Evidencia.VENENO);
		
		paises.add(Evidencia.AUSTRIA);
		paises.add(Evidencia.DINAMARCA);
		paises.add(Evidencia.ESPANHA);
		paises.add(Evidencia.FRANCA);
		paises.add(Evidencia.IMPERIO_OTOMANO);
		paises.add(Evidencia.INGLATERRA);
		paises.add(Evidencia.ITALIA);
		paises.add(Evidencia.POLONIA);
		paises.add(Evidencia.SUECIA);
	}
	
	public boolean temMaisArma(){
		boolean temMais = true;
		if ( armas.isEmpty() ){
			temMais = false;
		}
		return temMais;
	}
	
	public Evidencia obterArma(){
		return armas.removeFirst();
	}
	
	public void devolverArma(Evidencia arma){
		armas.addLast(arma);
	}
	
	public boolean temMaisPersonagem(){
		boolean temMais = true;
		if ( personagens.isEmpty() ){
			temMais = false;
		}
		return temMais;
	}
	
	public Evidencia obterPersonagem(){
		return personagens.removeFirst();
	}
	
	public void devolverPersonagem(Evidencia personagem){
		personagens.addLast(personagem);
	}
	
	public boolean temMaisPais(){
		boolean temMais = true;
		if ( paises.isEmpty() ){
			temMais = false;
		}
		return temMais;
	}

	public Evidencia obterPais(){
		return paises.removeFirst();
	}
	
	public void devolverPais(Evidencia pais){
		paises.addLast(pais);
	}
	
}
